package com.ctshk.rpc.visa.dto.visa;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 订单中心签证详情返回数据
 * </p>
 *
 * @author 陈雷
 * @since 2021-1-28
 */
@Data
@ApiModel(value="VisaOrderInfoResp", description="订单中心签证详情返回数据")
public class VisaOrderInfoResp implements Serializable {
    @ApiModelProperty(value = "id")
    private Long id;

    @ApiModelProperty(value = "付款状态 1、待付款  2、已付款  3、订单取消")
    private Integer status;

    @ApiModelProperty(value = "预订状态 4、待确认   5、确认成功   6、确认取消 0、-")
    private Integer bookingStatus;

    @ApiModelProperty(value = "取消状态 0、- 1、审批中 2、审批通过 3、审批不通过")
    private Integer cancelStatus;

    @ApiModelProperty(value = "销售单号")
    private String orderNumber;

    @ApiModelProperty(value = "币种")
    private String currency;

    @ApiModelProperty(value = "总金额")
    private BigDecimal totalAmount;

    @ApiModelProperty(value = "总实收")
    private BigDecimal realityCollectionAmount;

    @ApiModelProperty(value = "已退款")
    private BigDecimal refundAmount;

    @ApiModelProperty(value = "预订时间")
    private LocalDateTime gmtCreate;

    @ApiModelProperty(value = "订单状态 1、代付款、2、已取消、3、待确认、4、确认成功、5、确认失败")
    private Integer orderStatus;

    @ApiModelProperty(value = "销售人姓名")
    private String createByName;

    @ApiModelProperty(value = "联系人姓名")
    private String contactName;

    @ApiModelProperty(value = "联系人电话")
    private String contactMobile;

    @ApiModelProperty(value = "联系人手机区号")
    private String contactMobileAreaCode;

    @ApiModelProperty(value = "联系人邮箱")
    private String contactEmail;

    @ApiModelProperty(value = "备注信息")
    private String remark;

    @ApiModelProperty(value = "产品名称")
    private String name;

    @ApiModelProperty(value = "国家/地区")
    private String countryName;

    @ApiModelProperty(value = "签证类型")
    private String 	visaType;

    @ApiModelProperty(value = "办理日期")
    private LocalDateTime processingDate;

    @ApiModelProperty(value = "办理地点")
    private String processingPlace;

    @ApiModelProperty(value = "办理须知")
    private String handleInstruction;

    @ApiModelProperty(value = "付款到期时间")
    private LocalDateTime payExpireDate;

    @ApiModelProperty(value = "类型")
    private String typeName;
}
